Hyperlinks and deeplinks have been increasingly utilized in Web-based computing. Both hyperlinks and deeplinks have to store the data as a part of the link in the form of http parameters or as a part of the universal resource locator (URL). It usually results in a very long and none-human friendly way, and could expose information that the application does not want to display to the end user due to privacy, security or brand impression reasons. Such as user credit card number, phone number, marketing campaign targeting criteria, etc.
In the web context, the destination page of the hyperlink can receive data in the form of hypertext transport protocol (HTTP) parameters. In the application context, hyperlink cannot pass data from the link to an application. If the end user does not have the destination application installed on his/her device, he/she has to click on a link to the browser application or a store application on the device, and download the application. However, when the user launches the application for the first time after the download, there is no way for the application to get any prior information about which link the end user has clicked on, and there is no way for the link to pass any data to the application.
Deeplink cannot pass data to the destination application if the destination application is not installed on the device. Deeplink allows an application to pass data to other applications. However, in order to pass the data from the originator application to the destination application via the deeplink, it requires the destination application to be installed on the device. If the destination application has not been yet installed on the device, the mobile operating system will either do nothing, or return an error message. Since the deeplink URL or the data on the deeplink is not stored anywhere, if the destination application has not been installed at the time when the link was clicked/triggered, these data will be lost, and never passed to the destination application, even after the destination application has been installed later.
Hyperlink or deeplink's URL have to be changed if the data it is passing needs to be changed. For hyperlink or deeplink, once the link has been constructed, if one wants to alter the data the link is passing, one has to make changes to the parameters on the link. This is very cumbersome. For example, if you have sent the generated a hyperlink or deeplink via email to the end users, and later discovered this link has the wrong discount coupon code, and none of the link recipient will be able to redeem it. You cannot take that email back, and the end users run into issues.